package com.iyunwen.datatool.model.vo;


import com.iyunwen.datatool.utils.MD5Utils;
import lombok.Data;

import java.util.List;

/**
 * @description: 数据分组
 * @author: Zhu.Guodong
 * @create: 2020-03-20 13:24
 * @version:
 */
@Data
public class DataGroupVO <T extends BaseNormalizationDataVO>{
    /**
     * 分组下标
     */
    private Integer index;

    /**
     * 添加的数据的下标
     */
    private Integer flagIndex;

    /**
     * 分组名称
     */
    private String groupName;

//    /**
//     * 事件数量
//     */
//    private int eventCnt;
//
//    /**
//     * 匹配次数
//     */
//    private int sourceDateMatchCnt;

    /**
     * 事件数据
     */
    private List<T> eventData;

    /**
     *
     */
    private List<List<T>> sourceEventData;


    /**
     * 获取分组的唯一标识
     * @return
     */
    public String getGroupUniqFlag() {
        StringBuilder sb = new StringBuilder();
        for (T item : eventData) {
            sb.append(item.hashCode());
        }
        String md5Str = MD5Utils.MD5(sb.toString(), 32);
        return md5Str;
    }


//    /**
//     * 事件id集合
//     */
//    private Set<Integer> eventIdSet;
}
